The present invention relates to a jitter measurement apparatus and a jitter measuring method.
A Time Interval Analyzer or an oscilloscope has conventionally been used in a period jitter measurement. Each of those methods is called a Zero-crossing method. As shown in FIG. 1, a clock signal (a signal under measurement) x(t) from a PLL (Phase-Locked Loop) under test 11, for example, is supplied to a time interval analyzer 12.
Regarding a signal under measurement x(t), a next rising edge following one rising edge fluctuates against the preceding rising edge as indicated by dotted lines. That is, a time interval between two rising edges Tp, namely a period fluctuates. In the Zero-crossing method, a time interval (period) between zero-crossings is measured, a relative fluctuation of period is measured by a histogram analysis, and its histogram is displayed as shown in FIG. 2. A time interval analyzer is described in, for example, xe2x80x9cPhase Digitizing Sharpens Timing Measurementsxe2x80x9d by D.Chu, IEEE Spectrum, pp.28-32, 1988 and xe2x80x9cA Method of Serial Data Jitter Analysis Using One-Shot Time Interval Measurementsxe2x80x9d by J. Wilstrup, Proceedings of IEEE International Test Conference, pp.818-823, 1998.
On the other hand, Tektronix, Inc. and LeCroy co. have recently been providing digital oscilloscopes each being able to measure a jitter using an interpolation method. In this jitter measuring method using the interpolation method, data around a zero-crossing are interpolated from measured data of a signal under measurement that is sampled at high speed to estimate a timing of zero-crossing, whereby a time interval between zero-crossings (period) is estimated with a small error to measure a relative fluctuation of period.
That is, as shown in FIG. 3, a signal under measurement x(t) from the PLL under test 11 is inputted to a digital oscilloscope 14. In the digital oscilloscope 14, as shown in FIG. 4, the inputted signal under measurement x(t) is converted into a digital signal data sequence by an analog-to-digital converter 15. A data-interpolation is applied to data around a zero-crossing in the digital data sequence by an interpolator 16. With respect to the data-interpolated digital data sequence, a time interval between zero-crossings is measured by a period estimator 17. A histogram of the measured values is displayed by a histogram estimator 18, and a root-mean-square value and a peak-to-peak value of fluctuations of time intervals are obtained by an RMS and peak-to-peak detector 19. For example, in the case in which a signal under measurement x(t) is a waveform shown in FIG. 5A, its period jitters are measured as shown in FIG. 5B.
In the jitter measuring method by the time interval analyzer method, a time interval between zero-crossings is measured. Therefore a correct measurement can be performed. However, since there is, in this jitter measuring method, a dead-time when no measurement can be performed after one period measurement, there is a problem that it takes a long time to acquire a number of data that are required for a histogram analysis. In addition, in a jitter measuring method in which a wide-band oscilloscope and an interpolation method are combined, there is a problem that a jitter is overestimated (overestimation). That is, there is no compatibility in measured jitter values between this jitter measuring method and the time interval analyzer method. For example, a result of jitter measurement using a time interval analyzer for a clock signal of 400 MHz is shown in FIG. 6A, and a measured result of jitter measurement using an interpolation method for the same clock signal is shown in FIG. 6B.
Those measured results are, a measured value by the time interval analyzer 7.72 ps (RMS) vs. a measured value by the interpolation method 8.47 ps (RMS), and the latter is larger, i.e., the latter has overestimated the jitter value.
It is an object of the present invention to provide a jitter measurement apparatus and its method that can estimate a jitter value having compatibility with a conventional time interval analyzer method, i.e., a correct jitter value in a shorter time period.
The jitter measurement apparatus according to the present invention comprises: band-pass filtering means for selectively passing therethrough components from which harmonic components of a signal under measurement have been removed; zero-crossing timing estimating means for estimating zero-crossing timings of the signal that has passed through the band-pass filter; period estimating means for obtaining an instantaneous period waveform, namely an instantaneous period value sequence of the signal under measurement, from those estimated zero-crossing timings; and jitter detecting means for obtaining jitters of the signal under measurement from the instantaneous period waveform.
This jitter measurement apparatus includes AD converting means (analog-to-digital converter) for digitizing an analog signal and for converting it into a digital signal, and an input signal or an output signal of the band-pass filtering means is converted into a digital signal.
In addition, in this jitter measurement apparatus, the zero-crossing timing estimating means comprises: waveform data interpolating means for interpolating waveform data around the zero-crossing of the signal that has passed through the band-pass filtering means; zero-crossing specifying means for specifying a waveform data closest to the zero-crossing in the data-interpolated signal waveform; and timing estimating means for estimating a timing of the specified data.
It is desirable that the waveform data interpolating means uses polynomial interpolation, cubic spline interpolation, or the like.
In addition, the zero-crossing timing estimating means may estimate a zero-crossing timing by inverse linear interpolation from the waveform data around the zero-crossing in the signal that has passed through the band-pass filtering means.
It is desirable that the band-pass filtering means comprises: time domain to frequency domain transforming means for transforming the signal under measurement into a signal in frequency domain; a bandwidth limit processing means for taking out only components around a fundamental frequency of the signal from the output of the time domain to frequency domain transforming means; and frequency domain to time domain transforming means for inverse-transforming the output of the bandwidth limit processing means into a signal in time domain.
In this band-pass filtering means, if the signal under measurement is long, the signal under measurement is stored in a buffer memory. The signal under measurement is taken out in the sequential order from the buffer memory such that the signal under measurement being taken out is partially overlapped with a signal under measurement taken out just before. Each partial signal taken out from the buffer memory is multiplied by a window function, and the multiplied result is supplied to the time domain to frequency domain transforming means. The signal inverse-transformed in time domain is multiplied by an inverse number of the window function to obtain the band-limited signal.
In addition, it is desirable that the jitter measurement apparatus includes cycle-to-cycle period jitter estimating means to which the instantaneous period waveform obtained from the period estimating means is inputted for obtaining, in the sequential order, differential values each being a difference between adjacent instantaneous periods having a time difference of one period therebetween to calculate a differential waveform, and for outputting a cycle-to-cycle period jitter waveform data.
In addition, it is desirable in this jitter measurement apparatus to remove amplitude modulation components of the signal under measurement by waveform clipping means.
The jitter detecting means is constituted by one or a plurality of means out of peak-to-peak detecting means for obtaining a difference between the maximum value and the minimum value of the instantaneous period waveform or the cycle-to-cycle period jitter waveform, RMS detecting means for calculating a variance of the instantaneous period waveform data or the cycle-to-cycle period jitter waveform data to obtain the standard deviation, and histogram estimating means for obtaining a histogram of the instantaneous period waveform data or the cycle-to-cycle period jitter waveform data.
The functions of the present invention will be described below. A case in which a clock signal is used as a signal under measurement is shown as an example.
Jitter Measuring Method
In the jitter measuring method by time interval analyzer method, a fluctuation of a time interval between a zero-crossing and a next zero-crossing of a signal under measurement, i.e., a fluctuation of a period (fundamental period) of the signal under measurement is measured. This corresponds to measuring only frequency components around the fundamental frequency (corresponding to the fundamental period) of the signal under measurement. That is, a time interval analyzer method is a measuring method having a band-pass type frequency characteristic. on the other hand, a jitter value estimated by a sampling oscilloscope for measuring the entire frequency band of the signal under measurement using the interpolation method includes harmonic components. Consequently, the jitter value is influenced by the harmonic components, and hence a correct interpolation cannot be performed. In addition, the jitter value is not compatible with a jitter value measured by the conventional time interval analyzer method. For example, as shown in FIG. 6B, the jitter measuring method using the interpolation method overestimates a jitter value. On the contrary, a jitter value having compatibility with the time interval analyzer method can be estimated by measuring a period fluctuation between zero-crossings using a signal in which the frequency components of the signal under measurement are limited to the vicinity of the fundamental frequency by the band-pass filter. In addition, a jitter of a signal waveform having higher frequency can be measured by sampling a signal under measurement using a high-speed and wide-band sampling oscilloscope. Moreover, a measurement error of a period jitter can be decreased by using the interpolation method to decrease an estimation error of a zero-crossing timing.
In the jitter measuring method according to the present invention, at first for example, frequency components of a clock signal under measurement x(t) shown in FIG. 7A are band-limited, using a band-pass filter, to only the vicinity of the fundamental frequency of the signal x(t) such that at least harmonic components are not included therein. A band-limited clock waveform xBP(t) is shown in FIG. 7B. Then a zero-crossing timing of the band-limited clock signal xBP(t) is estimated as necessary using an interpolation method or an inverse-interpolation method to measure a time interval (instantaneous period) T between two zero-crossings. That is, a difference between the obtained zero-crossing timings is obtained in the sequential order at a predetermined interval. The period for obtaining the time difference between zero-crossing timing is n periods (n=0.5, 1, 2, 3, . . . ). In the case of n=0.5, a time difference between a rising (or falling) zero-crossing timing and a next falling (rising) zero-crossing timing is obtained. In the case of n=1, a time difference between a rising (or falling) zero-crossing timing and a next rising (falling) zero-crossing timing is obtained. A measured instantaneous period waveform (instantaneous period value sequence) T[n] is, for example, shown in FIG. 8. Finally, an RMS (root mean square) value and a peak-to-peak value of period jitter are measured from the measured instantaneous period value sequemce T[n]. A period jitter J is a relative fluctuation of a period T against a fundamental period T0, and is expressed by an equation (1).
xe2x80x83T=T0+Jxe2x80x83xe2x80x83(1)
Therefore, an RMS jitter JRMS corresponds to a standard deviation of an instantaneous period T[n], and is given by an equation (2).                               J          RMS                =                                            1              N                        ⁢                                          ∑                                  k                  =                  1                                N                            ⁢                                                (                                                            T                      ⁡                                              [                        K                        ]                                                              -                                          T                      xe2x80x2                                                        )                                2                                                                        (        2        )            
In this case, N is the number of samples of measured instantaneous period data, and Txe2x80x2 is an average value of the instantaneous period data. In addition, a peak-to-peak period jitter JPP is a difference between the maximum value and the minimum value of T[n], and is expressed by an equation (3).
JPP=maxk(T [k])xe2x88x92mink(T [k])xe2x80x83xe2x80x83(3)
FIG. 9A shows an example of a histogram of instantaneous periods measured by the jitter measuring method according to the present invention, and FIG. 9B shows a histogram measured by the corresponding conventional time interval analyzer so that a comparison with the histogram of the present invention can be made. In addition, FIG. 10 shows an RMS value and a peak-to-peak value of period jitter measured by the jitter measuring method according to the present invention as well as the respective values measured by the conventional time interval analyzer. Here, the peak-to-peak value JPP of the observed period jitter is substantially proportional to a square root of logarithm of the number of events (the number of zero-crossings). In the case of approximately 5000 events, JPP=45 ps is a correct value. A JPP error in FIG. 10 is shown assuming that 45 ps is the correct value. As shown in FIGS. 9 and 10, the jitter measuring method according to the present invention can obtain a measured result that is closer to a result of the conventional time interval analyzer method than a measured result of the conventional interpolation method is. That is, the jitter measuring method according to the present invention can obtain a measured value of jitter that is compatible with the conventional time interval analyzer method.
Moreover, the jitter measuring method according to the present invention can simultaneously measure a cycle-to-cycle period jitter. A cycle-to-cycle period jitter JCC is a period fluctuation between continuous cycles, and is expressed by an equation (4).
JCC[k]=T[k+1]xe2x88x92T[k]xe2x80x83xe2x80x83(4)
Therefore, by calculating a difference for each cycle period between the instantaneous period data measured as described above, and by calculating its standard deviation and a difference between the maximum value and the minimum value, an RMS value JCC,RMS and a peak-to-peak value JCC,PP of cycle-to-cycle period jitter can be obtained.                               J                      CC            ,            RMS                          =                                            1              M                        ⁢                                          ∑                                  k                  =                  1                                M                            ⁢                                                J                  CC                  2                                ⁡                                  [                  K                  ]                                                                                        (        5        )                                          J                      CC            ,            PP                          =                                            max              k                        ⁢                          (                                                J                  CC                                ⁡                                  [                  k                  ]                                            )                                -                                    min              k                        ⁢                          (                                                J                  CC                                ⁡                                  [                  k                  ]                                            )                                                          (        6        )            
In this case, M is the number of samples of differential data of measured instantaneous periods. A waveform of cycle-to-cycle jitter JCC[k] is, for example, shown in FIG. 11.
In the jitter measuring method according to the present invention, band-pass filtering means may be applied after an analog signal under measurement has been digitized, or the band-pass filtering means may be applied first to an analog signal under measurement and then its output waveform may be digitized. As the band-pass filtering means, an analog filter is used in the latter case. In the former case, a digital filter may be used, or the band-pass filtering means may be constituted by software using Fourier transform. In addition, it is desirable to use, for the digitization of an analog signal, a high speed AD converter, a high speed digitizer or a high speed digital sampling oscilloscope (that is, this jitter measurement apparatus may be integrated, as an option, into the sampling oscilloscope).
In addition, in the jitter measuring method according to the present invention, a period jitter can be estimated with high accuracy by removing, by waveform clipping means, amplitude modulation (AM) components of a signal under measurement to retain only phase modulation (PM) components corresponding to a jitter.
Band-Pass Filter
A band-limitation of a digitized digital signal can be materialized by a digital filter, or can also be achieved by Fourier transform. Next, a band-pass filter using FFT (Fast Fourier Transform) will be described. FFT is a method of transforming at high speed a signal waveform in time domain into a signal in frequency domain.
First, for example, a digitized signal under measurement x(t) shown in FIG. 12 is transformed into a signal in frequency domain X(f) by FFT. FIG. 13 shows a power spectrum of the transformed signal X(f). Then, the signal X(f) is band-limited such that only data around the fundamental frequency are retained and the other data are made zero. FIG. 14 shows this band-limited signal in frequency domain XBP(f). In this example, the fundamental frequency 400 MHz is used as a central frequency, and a harmonic component of 800 MHz is removed by making a pass band width 400 MHz. Finally, inverse FFT is applied to the band-limited signal XBP(f), whereby a band-limited signal waveform in time domain xBP(t) can be obtained. A band-limited signal waveform in time domain xBP(t) thus obtained is shown in FIG. 15.
Timing Estimation by Interpolation Method
When values of a function y=f(x) are given for discontinuous values x1, X2, X3, . . . , xn of a variable x, xe2x80x9cinterpolationxe2x80x9d is to estimate a value of f(x) for a value of x other than xk (k=1, 2, 3, . . . , n) between xk and xk+1.
In the timing estimation using an interpolation method, for example as shown in FIG. 16, an interval between two measurement points xk and xk+1 that contains a predetermined value yc, for example zero, is interpolated in sufficiently detail. After that an interpolated data closest to the predetermined value yc is searched, whereby a timing x when a function value y becomes the predetermined value yc is estimated. In order to make a timing estimation error small, it is desirable that y(x) is interpolated by making a time interval between the two measurement points xk and xk+1 equal time length and by making the time interval as short as possible.
Polynomial Interpolation
First, an interpolation method using a polynomial will be described. Polynomial interpolation is described, for example, in xe2x80x9cNumerical Analysisxe2x80x9d by L. W. Johnson and R. D. Riess, Massachusetts: Addison-Wesley, pp. 207-230, 1982.
When two points (x1, y1) and (x2, Y2) on a plane are given, a line y=P1(x) that passes through these two points is given by an equation (7). and is unitarily determined.
y=P1(x)={(xxe2x88x92x2)/(x1xe2x88x92x2)}y1+{(xxe2x88x92x1)/(x2xe2x88x92x1)}y2xe2x80x83xe2x80x83(7)
Similarly, a quadratic curve y=P2(x) that passes through three points (x1, Y1), (x2, Y2) and (X3, y3) on a plane is given by an equation (8).                     y        =                                            P              2                        ⁡                          (              x              )                                =                                                                                          (                                          x                      -                                              x                        2                                                              )                                    ⁢                                      (                                          x                      -                                              x                        3                                                              )                                                                                        (                                                                  x                        1                                            -                                              x                        2                                                              )                                    ⁢                                      (                                                                  x                        1                                            -                                              x                        3                                                              )                                                              ⁢                              y                1                                      +                                                                                (                                          x                      -                                              x                        1                                                              )                                    ⁢                                      (                                          x                      -                                              x                        3                                                              )                                                                                        (                                                                  x                        2                                            -                                              x                        1                                                              )                                    ⁢                                      (                                                                  x                        2                                            -                                              x                        3                                                              )                                                              ⁢                              y                2                                      +                                                            (                                      x                    -                                          x                      1                                                        )                                ⁢                                  (                                      x                    -                                          x                      2                                                        )                                                                              (                                                            x                      3                                        -                                          x                      1                                                        )                                ⁢                                  (                                                            x                      3                                        -                                          x                      2                                                        )                                                                                        (        8        )            
In general, , a curve of (Nxe2x88x921)th degree y=PNxe2x88x921(x) that passes through N points (x1, y1), (x2, y2) . . . (xN, yN) on a plane is unitarily determined, and is given by an equation (9) from the Lagrange""s classical formula.                     y        =                                            P                              N                -                1                                      ⁡                          (              x              )                                =                                                                                          (                                          x                      -                                              x                        2                                                              )                                    ⁢                                      (                                          x                      -                                              x                        3                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                          x                      -                                              x                        N                                                              )                                                                                        (                                                                  x                        1                                            -                                              x                        2                                                              )                                    ⁢                                      (                                                                  x                        1                                            -                                              x                        3                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                                                  x                        1                                            -                                              x                        N                                                              )                                                              ⁢                              y                1                                      +                                                                                (                                          x                      -                                              x                        1                                                              )                                    ⁢                                      (                                          x                      -                                              x                        3                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                          x                      -                                              x                        N                                                              )                                                                                        (                                                                  x                        2                                            -                                              x                        1                                                              )                                    ⁢                                      (                                                                  x                        2                                            -                                              x                        3                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                                                  x                        2                                            -                                              x                        N                                                              )                                                              ⁢                              y                2                                      +            …            +                                                                                (                                          x                      -                                              x                        1                                                              )                                    ⁢                                      (                                          x                      -                                              x                        2                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                          x                      -                                              x                                                  N                          -                          1                                                                                      )                                                                                        (                                                                  x                        N                                            -                                              x                        1                                                              )                                    ⁢                                      (                                                                  x                        N                                            -                                              x                        2                                                              )                                    ⁢                                      xe2x80x83                                    ⁢                  …                  ⁢                                      xe2x80x83                                    ⁢                                      (                                                                  x                        N                                            -                                              x                                                  N                          -                          1                                                                                      )                                                              ⁢                              y                N                                                                        (        9        )            
In the interpolation by polynomial of (Nxe2x88x921)th degree, a value of y=f(x) for a desired x is estimated from N measurement points using the above equation (9). In order to obtain a better approximation of an interpolation curve PNxe2x88x921(x), it is desirable to select N points in the proximity of x. This polynomial interpolation is a method that is frequently used.
Cubic Spline Interpolation
Next, cubic spline interpolation will be described. Cubic spline interpolation is described, for example, in xe2x80x9cNumerical Analysisxe2x80x9d by L. W. Johnson and R. D. Riess, Massachusetts: Addison-Wesley, pp. 237-248, 1982.
xe2x80x9cSplinexe2x80x9d means an adjustable ruler (thin elastic rod) used in drafting. When a spline is bended such that the spline passes through predetermined points on a plane, a smooth curve (spline curve) concatenating those points is obtained. This spline curve is a curve that passes through the predetermined points, and has the minimum value of square integral (proportional to the transformation energy of spline) of its curvature.
When two points (x1, y1) and (x2, Y2) on a plane are given, a spline curve that passes through these two points is given by an equation (10).
y=Ay1+By2+Cy1xe2x80x3+Dy2xe2x80x3
Axe2x89xa1(x2xe2x88x92x)/(x2xe2x88x92x1)
Bxe2x89xa11xe2x88x92A=(xxe2x88x92x1)/(x2xe2x88x92x1)
Cxe2x89xa1(1/6)(A3xe2x88x92A)(x2xe2x88x92x1)2
Dxe2x89xa1(1/6)(B3xe2x88x92B)(x2xe2x88x92x1)2xe2x80x83xe2x80x83(10)
Here, y1xe2x80x3 and Y2xe2x80x3 are the second derivative values of the function y=f(x) at (x1, y1) and (x2, Y2), respectively.
In the cubic spline interpolation, a value of y=f(x) for a desired x is estimated from two measurement points and the second derivative values at the measurement points using the above equation (10). In order to obtain a better approximation of an interpolation curve, it is desirable to select two points in the proximity of x.
Timing Estimation by Inverse Linear Interpolation
Inverse interpolation is a method of conjecturing, when a value of a function yk=f(xk) is given for a discontinuous value x1, x2, . . . , xn of a variable x, a value of g(y)=x for an arbitrary y other than discontinuous yk (k=1, 2, . . . n) by defining an inverse function of y=f(x) to be x=g(y). In the inverse linear interpolation, the linear interpolation is used in order to conjecture a value of x for y.
When two points (x1, y1) and (x2, y2) on a plane are given, a linear line that passes through these two points is given by an equation (11).
y={(xxe2x88x92x2)/(x1xe2x88x92x2)}y1+{(xxe2x88x92x1)/(x2xe2x88x92x1)}y2xe2x80x83xe2x80x83(11)
An inverse function of the above equation is given by an equation (12), and a value of x for y can unitarily be obtained.
x={(yxe2x88x92y2)/(y1xe2x88x92y2)}x1+{(yxe2x88x92y1)/(y2xe2x88x92y1)}x2xe2x80x83xe2x80x83(12)
In the inverse linear interpolation, as shown in FIG. 17, a value of x=g(yc) for a desired yc is estimated from two measurement points (xk, yk) and (xk+1, yk+1) using the above equation (12), whereby a timing x for obtaining a predetermined voltage value yc is unitarily be estimated. In order to reduce an estimation error, it is desirable to select two points xk and xk+1 between which x is contained. This inverse linear interpolation is also used frequently.
Waveform Clipping
Waveform clipping means removes AM (amplitude modulation) components from an input signal, and retains only PM (phase modulation) components corresponding to a jitter. Waveform clipping is performed by applying the following processes to an analog input signal or a digital input signal; 1) multiplying the value of the signal by a constant, 2) replacing a signal larger than a predetermined threshold 1 with the threshold 1, 3) replacing a signal smaller than a predetermined threshold 2 with the threshold 2. Here, it is assumed that the threshold 1 is larger than the threshold 2. FIG. 18A shows an example of a clock signal having AM components. Since the envelope of the time based waveform of this signal fluctuates, it is seen that this signal contains AM components. FIG. 18B shows a clock signal that is obtained by clipping this clock signal using clipping means. Since the time based waveform of this signal shows a constant envelope, it can be ascertained that the AM components have been removed.